Comparison of agent-based modeling software

In the last few years, the agent-based modeling (ABM) community has developed several practical agent based modeling toolkits that enable individuals to develop agent-based applications. More and more such toolkits are coming into existence, and each toolkit has a variety of characteristics. Several individuals have made attempts to compare toolkits to each other (see references). Below is a chart intended to capture many of the features that are important to ABM toolkit users.

Comparison of ABM Software

Agent Based Modeling Toolkit Comparison
Platform Primary Domain License Programming Language Operating System User Support FIPA Compliant GIS Capabilities 3D Capabilities
ABLE (Agent Building and Learning Environment) [1] Building intelligent agents using machine learning and reasoning Open source (free for academic and non-commercial use) Able Rule Language (ARL) OS/2; Windows 95; Windows 98; Windows NT; and UNIX (any Java 2 JVM) FAQ; tutorial; examples; discussion forum; emailing developers; Selected publications; API; documentation Unknown Unknown Unknown
Altreva Adaptive Modeler [2] Building agent-based market simulation models for price forecasting of real-world stocks and other securities Proprietary; free evaluation version available for research and experimentation (some limitations but no expiration) No programming skills required. An adaptive form of genetic programming is used to create trading rules. User can select functions to be used in the genetic programming engine. Windows 2000, NT 4.0, XP, Vista, 7 or any other platform that supports Microsoft .Net 2.0 or higher FAQ, documentation, tutorial, examples, forum, email support Unknown Unknown Up to 3 agent properties can be visualized in real-time using 2D graphics and color
ADK (Tryllian Agent Development Kit) [3] Large scale distributed applications; Mobile (distributed) agents Dual licensed: either accept the LGPL or contact Tryllian to acquire a closed source license Java Windows; Unix; Big Iron IBM mainframes4; anywhere that the Java Standard Edition version 1.4 runs; Sun Java Runtime Environment version 1.3.1 or 1.4; JDK 5.05; any platform on which Sun has made available a JVM; Windows 2000; Windows XP; Solaris; GNU/Linux; Additionally, the ADK has been tested on OS/400 and OS/370. Mac OS X is not supported, but part of the development of the ADK is done on Mac OS X FAQ; defect reporting; documentation; mailing list; quickstart guide; examples; email maintainer for more support; API Yes Unknown Unknown
AgentBuilder [4] General purpose multi-agent systems Proprietary; Discounted academic licenses available Knowledge Query and Manipulation Language (KQML); Java; C; C++ Windows NT; Windows 2000; Windows XP; Linux; Sun Solaris; any platform with a Java Virtual Machine Consulting; training; example; FAQ; users manuals; defect reporting; mailing list Unknown Unknown Unknown
AgentSheets Teaching simulation to grades K–12 in social studies, mathematics, sciences, and social sciences Proprietary Visual AgenTalk; can be exported to Java; Windows; Mac OS X; should run on any Java Virtual Machine Manuals; tutorial movies; FAQ; recommended readings on programming and simulation; personal contact with developers; elementary school training; teacher guides Unknown Unknown Unknown
AnyLogic Agent-based general purpose; distributed simulations Proprietary Java; UML-RT (UML for real time) AnyLogic 6 models are standalone Java applications (or applets) and run on any Java-enabled platform or in any Java-enabled browser with the following version of JRE (Java Runtime Environment):JRE 1.5.0 or later; Java plug-in (needed to run models in a Browser) is optionally installed with the JRE; Windows Vista, x86-32; Windows XP, x86-32; Mac OS X 10.4.1 or later, Universal; SuSE Open Linux 10.2 or later, x86-32; Ubuntu Linux 7.04 or later, x86-32 Demos; training; consulting; knowledge base; online forum; ask a question; documentation; selected references Unknown Yes Yes
AOR Simulation [5] Agent-based discrete event simulation; special extensions for modeling cognitive agents (with beliefs and speech-act-based information exchange communication). GPL Java Windows; Macintosh; Unix; Linux; web Web site; selected references; documentation; examples No planned planned
Ascape [6] General-purpose agent-based models. BSD Java Windows; Macintosh; Unix; Linux; web Online forum (emailing list); selected references; documentation; API Unknown Unknown Unknown
Brahms [7] Multi-agent environment for simulating organizational processes Free, but only available for research or non-commercial purposes Brahms language (an agent oriented language) Windows 2000; Windows XP; Linux; Sparc/Intel Solaris; and Mac OS X Documentation; API; tutorials; discussion forums; email contacts Unknown Unknown Unknown
Breve Building 3D simulations of multi-agent systems and artificial life. GPL Simple Interpreted object oriented language called Steve; agent behaviors can be written in python Mac OS X; Linux; and Windows Email developer; tutorials; FAQ; forums; defects section; API; documentation Unknown Unknown Yes
Construct [8] Multi-agent model of group and organizational behavior. Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Cormas (Common-pool Resources and Multi-Agent Systems) [9] Natural resources management, rural development and ecology Free to modify but not to distribute the modified version Smalltalk (requires VisualWorks to run) Linux; Macintosh; Unix; Windows Training, selected references; examples; online forum; email developers; documentation Unknown Yes Unknown
Cougaar[10] Multi-agent systems; highly distributed, scalable, reliable, survivable applications; Domain independent; large scale distributed, complex, data intensive (can be configured for small-scaled embedded applications Cougaar Open Source License (COSL) is a modified version of the OSI approved BSD License Java Windows 98; Windows NT; Windows XP; Linux; Mac OS X; and Java-1.4-capable PDAs FAQ; tutorials; slide shows; documentation; selected references; email support; public forums; mailing lists No Integrated with OpenMap [11] No
DeX [12] Developing, analyzing, and visualizing dynamic agent-based and multi-body simulations; parallel applications Free (open source) - read license C++; dML (deX Modeling Language): a domain-specific language based on C++; python X86 or x86_64 Linux Users guide; demo; API; peer to peer account; author support Unknown Unknown Unknown
DigiHive artificial life, self-organization, self-replication, emergent phenomena Unknown Prolog Windows; Unix; Linux; Email; documentation; examples Unknown Unknown Unknown
D-OMAR (Distributed Operator Model Architecture) [13] General purpose simulation environment Free (open source) - read license Java (OMAR-J); lisp (OMAR-L) Windows; Unix; Linux API; technical support from authors Unknown Unknown Unknown
ECHO [14] Ecological modeling Free, open source C Unix workstations; Developed on Sun Sparc architecture using Sunos 4.1.3; A few selected publications; one outdated publication on how to compile and use Echo Unknown Unknown Unknown
ECJ Evolutionary computation; genetic programming Academic Free License – open source Java Any Java Platform Tutorials; examples; API; documentation; online mailing list Unknown Unknown Unknown
FAMOJA (Framework for Agent-based MOdelling with JAva) [15] Resource flow management, theoretical systems science, applied systems, environmental systems analysis LGPL Java JDK installation Tutorial; API; wiki; documentation; Unknown Unknown Unknown
Framsticks 2D/3D simulations of (evolving) multi-agent systems and artificial life Depends on module: GPL/LGPL/Propertiary FramScript (similar to JavaScript) Windows; Linux; *nix; Mac OS X Email developer; tutorials; manual; FAQ; forums; API; documentation; selected publications; examples Unknown Yes Yes
GPU Agents [16] Agent-based model simulator on the GPU Unknown Unknown Unknown Unknown Unknown Unknown Unknown
GROWlab [17] ABM toolkit of the International Conflict Research Group at the ETH Zurich Freely available Unknown Unknown Unknown Unknown Unknown Unknown
iGen [18] Artificial intelligence engine; human performance modeling; embeddable cognitive agents Proprietary (various prices for Developer's License; Modeler's License; Runtime License; and Academic Licenses) COGNET Execution Language (CEL); C++; C; Java Windows 95, 98, 2000, NT, XP Consulting; training; selected publications; (user’s forum and documentation under construction, but not online yet) Unknown Unknown Unknown
ICARO-T [19] Reactive and cognitive agents applications Open Source Java Windows and UNIX Code with examples and documentation. Unknown Unknown Unknown
JABM [20] Java Agent-Based Modeling toolkit based on dependency injection LGPL version 3 Java Any Java Platform mailing list; defect list; examples; API; documentation Unknown Unknown Unknown
JADE Distributed applications composed of autonomous entities LGPL version 2 Java Any Java Platform FAQ; mailing list; defect list; tutorials; API; documentation Yes Unknown Unknown
JAMEL (Java Agent-based MacroEconomic Laboratory) [21] Building agent-based macroeconomic simulations Free (closed source) No programming required Any Java platform version 1.5 or higher examples; reference paper; contact developer Unknown Unknown Unknown
Janus [22] General purpose multi-agent platform with agent based, organizational and holonic simulation layer GPLv3 for non-commercial use; or adhoc commercial license. Java 1.6 or higher; Ruby scripting of agent's behaviors is possible. Windows; Macintosh; Unix; Linux; Android; Web FAQ; documentation; online forum; examples; defect list Unknown Non-free extension available: JaSIM Non-free 3D viewer extension is available
JAS [23] General purpose agent based LGPL; associated third party licenses (usually non¬proprietary) Java Any Java platform version 1.5 or higher API; documentation; tutorials; email authors Unknown Unknown Unknown
JASA (Java Auction Simulator API) [24] Computational economics; Agent based computational economics GPL Java Any Java Platform Public forum, not very well used; API; small set of selected readings; limited documentation Unknown Unknown Unknown
JCA-Sim [25] Cellular automata; General purpose simulator Free (closed source) Java; Cellular Description Language (CDL) (for input to simulation) Any Java Platform Examples; documentation; API; one contact listed Unknown Unknown Unknown
jES (Java Enterprise Simulator) [26] A single enterprise or a system of enterprises Academic free license Java Any Java Platform limited documentation Unknown Unknown Unknown
jEcho [27] Ecological modeling using object oriented principles Free, open source Java Any Java Platform Limited documentation; Author has limited time to work with clients Unknown Unknown Unknown
JESS [28] Rule engine and scripting environment Proprietary; free for academic use Java/Jess/JessML (declarative xml rule language) Java Virtual Machine FAQ; documentation; mailing list; examples; third party plug ins and libraries; wiki Unknown Unknown Unknown
LSD (Laboratory for Simulation Development) [29] A language for simulation models; social sciences GPL C++; LSD Windows; Unix; Macintosh Documentation; a couple of examples; 2 contacts on webpage (but have to dig for them) Unknown Unknown Unknown
Madkit (Multi Agent Development Kit) [30] A generic, highly customizable and scalable platform; general purpose multi-agent platform with agent based simulation layer LGPL for basic libraries; GPL for development and non- commercial applications Java; MadKit may be developed in all languages that are compiled into Java; for the moment, MadKit comes with 4 scripting languages which are executed in the Java Virtual Machine: Scheme (Kawa), Jess (rule based language), BeanShell (Java interpreted) and Python (jython). Using the JNI (Java Native Interface) technique, it should be possible to develop agents written in C or C++. It is also possible to embed Java agents in C/C++ applications using the same technique, using JNI as a glue between the two worlds. JVM (Java 2) FAQ; documentation; online forum; examples; defect list Unknown Unknown Unknown
MAGSY [31] Rules Based Multi-Agent Systems Free (closed source) Magsy (production language) UNIX, LINUX, SunOS and Solaris systems. Limited documentation; some example (inside installation package); no users support groups; no contact even for authors Unknown Unknown Unknown
MAML (Multi-Agent Modeling Language) [32] Social science; domain specific programming language for developing agent based models The compiler is freely downloadable for evaluation purposes (open source) Later the system will be put under GNU license MAML language; C; visual programming interface PC; Linux Tutorial; examples; reference papers; contact developers Unknown Unknown Unknown
MASON [33] General purpose; social complexity, physical modeling, abstract modeling, AI/machine learning Academic Free License (open source) Java Any Java Platform (1.3 or higher) Mailing list; documentation; Tutorials; third party extensions; reference papers; API Unknown Yes Yes
MASS (Multi-Agent Simulation Suit) [34] General purpose, distributed simulations, participatory simulations. Proprietary, free version available FABLES (Functional Agent-based Language for Simulations); Java; it is possible to run Repast and NetLogo simulations too. Any OS with Java 1.5, tested for Windows, MacOSX, Linux Manuals, tutorials, mailing lists, reference papers. No No From Java, any visualisation can be added.
MAS-SOC (Multi-Agent Simulations for the SOCial Sciences) [35] Social simulation Contact authors for availability AgentSpeak(XL), an extension of Agentspeak(L) and (Environment Description Language for Multi-Agent Simulation); ELMS, a language for modelling environments where cognitive agents are situated. Future work to implement in Java Unknown Unknown Unknown Unknown Unknown
MIMOSE (Micro-und Multilevel Modelling Software) [36] Social sciences; education Free (closed source) A model description language (derived from functional language paradigms) Client/server version on Sun/Solaris/ and Linux; Java based client on Windows NT, Solaris, and Linux User’s manual Unknown Unknown Unknown
Moduleco [37] Multi-agent platform GPL Java Windows; Linux; Macintosh API; minimal documentation Unknown Unknown Unknown
MOOSE (Multimodeling Object-Oriented Simulation Environment) [38] General purpose, agent based (modeled from SimPack) Unable to verify that available for public use C++ IBM PC running DOS/Windows or Version of Unix (such as Linux or BSD); Unix Workstations (SUN, SGI) Selected references; user’s manual in toolkit package Unknown Unknown Unknown
OBEUS (Object Based Environment for Urban Simulation) [39] Urban simulation Free (closed source) Microsoft.net .NET languages – C#, C++, or Visual Basic Windows User’s manual Unknown Unknown Unknown
Omonia (previously Quicksilver) [40] AI/social sciences LGPL Java JDK installation Examples; little documentation Unknown Unknown Unknown
oRIS [41] Teaching; programming by concurrent objects, multi-agent systems, distributed virtual reality, adaptive control Proprietary - (free for academic institutions) Oris language; Very close to C++ and Java (dynamic and interpreted multi-agent language) IA32 Linux; PPC Linux; SGI Irix; and Windows Documentation; examples in French; API Unknown Unknown Unknown
PS-I (Political Science-Identity) [42] Political phenomena GPL No programming required; TCL/TK scripting to apply effects Cross platform with binaries available for win32; Windows; Linux; PS-I is not currently available for Macintosh users except via emulation of a Windows, NT, or Linux environment. Documentation; selected publications Unknown Unknown Unknown
Repast Social sciences BSD Java (RepastS, RepastJ); Python (RepastPy); Visual Basic, .Net, C++, J#, C# (Repast.net) Java version 1.4, although a 1.3 version for Mac OS X is available. To run the demonstration simulations, you'll need a Java Runtime Environment (RepastS, RepastJ); platform independent (RepastPy); Windows (Repast.net) Documentation; mailing list; defect list; reference papers; external tools; tutorials; FAQ; examples Unknown Yes Yes
SDML (Strictly Declarative Modeling Language) [43] Multi-agent systems (with limited rationality) GPL; third party license (for VisualWorks) Smalltalk release 5i.2 Non-Commercial Windows 3.1; Windows 95; Widows 98; Windows 2000; Windows NT; Linux; Intel; PowerMac; Unix; ADUX/AIX/HPUX/ SGI/Solaris Mailing list; tutorial; selected references; limited documentation included with software package Unknown Unknown Unknown
SEAS (System Effectiveness Analysis Simulation) [44] The US Air Force's Multi-Agent Theater Operations Simulation Free with government approval Tactical Programming Language (TPL) 32-bit and 64-bit Windows 2000/XP/Vista/7 User manual, examples, training, email, phone Unknown Unknown Unknown
SeSAm (Shell for Simulated Agent Systems) (fully integrated graphical simulation environment) [45] General purpose multi domain (agent based); research, teaching, resources, graph theory LGPL Simulation compiled from visual specification; Visual programming Java 5.0 or better; Windows; Linux; Mac OS X Tutorials; mailing list; FAQ; wiki; author contact Plugin available Raster- and Vector-GIS as spatial representation, ESRI-Arcview files can be imported Plugin available
Jade’s sim++ Parallel simulation; Applied simulations; network planning; electronic CAD; real time communication simulation GPL version 2 C++ Available for Meiko and BBN multi-computer systems and can be used on a network with Sun3, Sun 4, and HP 9000 workstations Unknown Unknown Unknown Unknown
JIAC [46] General purpose Unknown Java Unknown Unknown Unknown Unknown
SimPlusPlus [47] Testing Base24 applications GPL Fully programmable with any language that can support activeX components (e.g. C, C++, VB, VBA, Java, and others), but no programming required Sim++ can be used with C code or C++ code, but you MUST have a C++ compiler. DOS; Windows (as a DOS application) or OS2 (as a DOS app). The SimPack software is currently being overhauled to use C++ exclusively; however, it will still be possible to use C programs, as before, to access the C++ routines. Contact authors Unknown Unknown Unknown
SimAgent (also sim agent) [48] Research and teaching related to the development of interacting agents in environments of various degrees and kinds of complexity; exploratory research on human-like intelligent agents; systems involving large numbers of highly distributed fairly homogeneous relatively 'small' agents; primarily designed to support design and implementation of very complex agents, each composed of very different interacting components (like a human mind) where the whole thing is embedded in an environment that could be a mixture of physical objects and other agents of many sorts Free (open source); MIT/XFREE86 license (for poplog libraries); may later be replaced by GPL Pop-11, like Common Lisp, is a powerful extendable multi-purpose programming language supporting multiple paradigms. Within the Poplog environment Pop-11 also supports programs written in Prolog, Common Lisp or Standard ML At least prolog version 15; Windows; Mac OS X; Linux; Unix Tutorials; documentation; Selected publications; examples; author contact Unknown Unknown Unknown
SimBioSys [49] Agent-based evolutionary simulations in both biology and the social sciences Artistic License Agreement C++ Any platform that supports C++ None Unknown Unknown Unknown
SimPack [50] General purpose, agent based; teaching computer simulation at the under¬graduate (senior) and graduate levels GPL C++; (C libraries no longer maintained); Java Any platform that supports C++; Technically, the processing environment is supposedly checked for Java 1.4 but Java 1.5 seems to work fine. Simpackj has been tested with 1.5 and exhibits no issues. The SDK is preferred over the JRE, as this could be useful for certain types of Java code that you may be writing. The SDK includes a JRE Selected publications; mailing list; user’s manual Unknown Unknown Unknown
Spatial Modeling Environment (SME) [51] Ecological economic; Ecoystems modeling LGPL No knowledge of computer programming required Unix Documentation; mailing list (but wasn’t functional when went to the website) Unknown Unknown Unknown
Soar General purpose AI; human performance modeling; learning (including explanation-based learning) BSD Soar 1 to 5 in Lisp; Soar 6 in C; Java, C++, TCL Windows 98; Windows ME; Windows 2000; Windows XP; Linux; Mac OS X Documentation; FAQ; selected publications; defect list; third party extensions; mailing list; contact authors; tutorial; examples; wiki Unknown Unknown Unknown
StarLogo Social and natural sciences; Educators; for students to model the behavior of decentralized systems; user friendly for K–12 students Free (closed source) - Clearthought Software License, Version 1.0 StarLogo (an extension of Logo) Mac OS X v10.2.6 or higher with Java 1.4 installed; Windows; Unix; Linux (StarLogo does not seem to be compatible with Java 5/1.5 on Solaris) Mailing list; tutorials; FAQ; bug list; documentation; developer contacts Unknown Unknown Unknown
MacStarLogo Social and natural sciences; Educators; for students to model the behavior of decentralized systems; user friendly for K–12 students Free (closed source) MacStarLogo Macintosh Download available from StarLogo webpage, but not actively developed anymore Unknown Unknown Unknown
OpenStarLogo Social and natural sciences; Educators; for students to model the behavior of decentralized systems; user friendly for K–12 students Free for use and distribution for non-commercial purposes (open source) StarLogo (an extension of Logo) Mac OS X v10.2.6 or higher with Java 1.4 installed; Windows; Unix; Linux (StarLogo does not seem to be compatible with Java 5/1.5 on Solaris) FAQ; defects; online support lists; examples and documentation Unknown Unknown Unknown
StarLogoT Social sciences; Education; decentralized networks Free (closed source) StarLogoT Macintosh Tutorials; API; documentation; defect list; contact authors Unknown Unknown Unknown
StarLogo TNG Social and natural sciences; teaching basic computer programming skills StarLogo TNG License v1.0 - (closed source) - the code may be freed up eventually. The original StarLogo is apparently going to be released under an open source license soon StarLogo TNG language – a graphical programming language and a 3d world Macintosh and Windows Tutorials; FAQ; documentation; mailing lists; API Unknown Unknown Unknown
NetLogo Social and natural sciences; Help beginning users get started authoring models GPL NetLogo Any Java Virtual Machine, version 5 or later. Documentation; FAQ; selected references; tutorials; third party extensions; defect list; mailing lists Unknown Yes Yes
Sugarscape [52] Social sciences; education GPL Java Java 2 SDK or (Internet Explorer 5.x or greater AND the Java 2 Runtime Environment (JRE)) API Unknown Unknown Unknown
Swarm General purpose agent based GPL Java; Objective-C Windows; Linux; Mac OS X Wiki; tutorials; examples; documentation; FAQ; selected publications; mailing lists Unknown Unknown Unknown
VisualBots [53] Multi-agent simulator in Microsoft Excel Free, Not Open Source Visual Basic Windows Object model documentation; tutorials; example projects Unknown Yes No
VSEit [54] Social sciences; education Free (closed source) Java To run simulations: a Java enabled internet browser like Netscape Navigator or Microsoft Explorer. VSEit is known to run under Netscape Navigator 4.06 or higher, on Windows 95/98 and Windows NT; to develop simulations: any Java platform supporting Java 1.1.7. Examples; users guide; defect list; Unknown Unknown Unknown
Xholon [55] Integration of multiple paradigms, including ABM, in a single model or simulation. LGPL Java Windows; Linux; any Java Platform Tutorials; many examples; user guide; web sites Unknown Unknown exports to VRML
ZEUS [56] Rules engine and scripting environment; Distributed multi-agent simulations Open source (read license) Visual editors and code generators Windows 95; Windows 98; Windows NT; Windows 2000; Windows XP; Linux; BSD; UNIX-like OSes; Solaris Documentation; author contact Yes Unknown Unknown

References

External links